/* 菜单树开始 */
var setting = {
	async : {
		enable : true,
		url : baseUrl + '/role/queryRoleList.do',
		type : 'get',
		autoParam : ["id=node"]
	},
	data : {
		simpleData : {
			enable : true,
			idKey : 'id',
			pIdKay : 'parentId',
			rootPId : "-1"
		},
		key : {
			name : 'text',
			url : 'noneUrl'
		}
	},
	callback : {
		onClick : zTreeOnClick
	}
};
function zTreeOnClick(event, treeId, treeNode) {
	$("#jqGrid").jqGrid('setGridParam', {
				postData : {
					roleId : treeNode.id,
					gyh : $("#q_yhm").val() || "",
					xm : $("#q_xm").val() || "",
					gwmc : $("#q_gwmc").val() || ""
				}
			}).trigger("reloadGrid");
};
$(document).ready(function() {
			$.fn.zTree.init($("#westTree"), setting);
		});
/* 菜单树结束 */
/* 初始化jqGrid 开始 */
$("#jqGrid").jqGrid({
			url : baseUrl + '/cud/queryUserByRoleId.do',
			datatype : "json",
			mtype : 'post',
			colModel : [{
						label : '用户名',
						name : 'GYH',
						sortable : false,
						align : 'center'
					}, {
						label : '姓名',
						align : 'center',
						name : 'XM',
						sortable : false
					}, {
						label : '岗位名称',
						align : 'center',
						sortable : false,
						name : 'GWMC'
					}],
			viewrecords : true,
			rowNum : 50,
			pager : '#jqGridPager',
			multiselect : true,
			multiboxonly : true,
			beforeSelectRow : function(rowid, e) {
				$(this).jqGrid('resetSelection');
				return (true);
			}, // 实现复选框单选
			onSelectAll : function(aRowids, status) {
				$(this).jqGrid('resetSelection');
			}, // 实现头部复选框,无效
			onSelectRow : onSelectRow,
			autowidth : true,
			height : $(window).height() - 86 - 60, // 屏幕高度-86-汇总栏20
			rownumbers : true,
			prmNames : {// 每页条数 字段
				rows : 'limit'
			},
			jsonReader : {// 返回数据,格式字段映射
				id : "ID",
				root : "data",
				records : 'total',
				total : 'totalPage',
				repeatitems : true
			}
		});
$("#jqGrid").jqGrid('navGrid', '#jqGridPager', {
			add : false,
			edit : false,
			del : false,
			search : false
		});
function onSelectRow(rowid, status) {
	/* 菜单树开始 */
	var setting = {
		async : {
			enable : true,
			url : baseUrl + '/cud/queryMenuList.do',
			type : 'get',
			autoParam : ["id=nodeId"],
			otherParam : ["userId", rowid]
		},
		data : {
			simpleData : {
				enable : true,
				idKey : 'id',
				pIdKay : 'parentId',
				rootPId : "-1"
			},
			key : {
				name : 'text',
				url : 'noneUrl',
				checked : 'checked'
			}
		},
		check : {
			enable : true,
			chkStyle : 'checkbox'
		},
		callback : {
			onAsyncSuccess : zTreeOnAsyncSuccess,
			onCheck : zTreeOnCheck
		}
	};
	$.fn.zTree.init($("#eastTree"), setting);
	function zTreeOnAsyncSuccess(event, treeId, treeNode, msg) {
		var eastTreeObj = $.fn.zTree.getZTreeObj("eastTree");
		var nodes = eastTreeObj.getCheckedNodes(true);
		for (var i = 0; i < nodes.length; i++) {
			eastTreeObj.expandNode(nodes[i], true, true, true);
		}
	}
	function zTreeOnCheck(event, treeId, treeNode) {
		var eastTreeObj = $.fn.zTree.getZTreeObj("eastTree");
		eastTreeObj.expandNode(treeNode, true, true, true);
	}
	/* 菜单树结束 */
};
/* 初始化jQGrid 结束 */
/* 初始化按钮 开始 */
$("#btu_search").button({
			icons : {
				primary : 'ui-icon-search'
			}
		}).click(function() {
			var treeObj = $.fn.zTree.getZTreeObj("westTree");
			var nodes = treeObj.getSelectedNodes();
			if (nodes.length <= 0) {
				$("#dialog_alert").empty();
				$("#dialog_alert").append("<label>警告,请选择角色!</label>");
				$("#dialog_alert").dialog({
							modal : true,
							buttons : {
								"确定" : function() {
									$(this).dialog("close");
								}
							}
						});
			} else {
				$("#jqGrid").jqGrid('setGridParam', {
							postData : {
								roleId : nodes[0].id,
								gyh : $("#q_yhm").val() || "",
								xm : $("#q_xm").val() || "",
								gwmc : $("#q_gwmc").val() || ""
							}
						}).trigger("reloadGrid");
			}
		});
$("#btu_reset").button({
			icons : {
				primary : 'ui-icon-disk'
			}
		}).click(function() {
			$("#q_yhm").val("");
			$("#q_xm").val("");
			$("#q_gwmc").val("");
		});

$("#btu_save").button({
			icons : {
				primary : 'ui-icon-disk'
			}
		}).click(function() {
	var treeObj = $.fn.zTree.getZTreeObj("eastTree");
	var nodes = treeObj.getChangeCheckedNodes();
	var userId = $('#jqGrid').jqGrid('getGridParam', 'selrow');
	if (null == userId) {
		$("#dialog_alert").empty();
		$("#dialog_alert").append("<label>警告,请选择一位用户!</label>");
		$("#dialog_alert").dialog({
					modal : true,
					buttons : {
						"确定" : function() {
							$(this).dialog("close");
						}
					}
				});
	} else if (nodes.length <= 0) {
		$("#dialog_alert").empty();
		$("#dialog_alert").append("<label>菜单未改变,无需保存!</label>");
		$("#dialog_alert").dialog({
					modal : true,
					buttons : {
						"确定" : function() {
							$(this).dialog("close");
						}
					}
				});
	} else {
		var checkNodes = treeObj.getCheckedNodes(true);
		var menuids = [];
		for (var i = 0; i < checkNodes.length; i++) {
			menuids.push(checkNodes[i].id);
		}
		//console.info(menuids.toString());
		$.post(baseUrl + "/cud/saveUserMenu.do", {
					menuIds : menuids.toString(),
					userId : userId
				}, function(result) {
					if (result.success) {
						$("#dialog_alert").empty();
						$("#dialog_alert").append("<label>保存成功!</label>");
						window.parent.loadTree(-1);
					} else {
						$("#dialog_alert").empty();
						$("#dialog_alert").append("<label>保存失败!</label>");
					}
					$("#dialog_alert").dialog({
								modal : true,
								buttons : {
									"确定" : function() {
										$(this).dialog("close");
										treeObj.reAsyncChildNodes(null,
												"refresh");
									}
								}
							});
				});
	}
});
/* 初始化按钮 结束 */

// 工具提示框 tooltip
$(document).tooltip();
